// function fun(complate) {
//     console.log("hello gulp fun");
//     complate() // 表示任务执行完成
// }
// function add(complate) {
//     console.log("hello gulp add");
//     complate() // 表示任务执行完成
// }
// module.exports = {
//     fun,add
// } //任务

//旧版本 使用 
// let gulp = require("gulp")

// gulp.task("oldgulp",complate=>{
//     console.log("oldgulp=>task");
// })


//安装  gulp-concat  //合并js
let concat = require("gulp-concat")
let gulp = require("gulp")
let cssMin = require("gulp-css")

function concatjs() {
    return gulp.src("./lib/*.js") //读取资源 ==》流对象
        .pipe(concat("all.js")) //在管道中，执行了文件合并任务
        .pipe(gulp.dest("./dist/")) //把流数据写入到指定目录下

    return gulp.src("./lib/*.js").pipe(concat("all.js")).pipe(gulp.dest("./dist/"))
}
// 安装  gulp-css //压缩css
function concatcss() {
    return gulp.src("./lib/*.css") //读取资源 ==》流对象
        .pipe(concat("all.css")) //在管道中，执行了文件合并任务
        .pipe(cssMin()) //压缩css
        .pipe(gulp.dest("./dist/")) //把流数据写入到指定目录下

    return gulp.src("./lib/*.js").pipe(concat("all.js")).pipe(gulp.dest("./dist/"))
}


//  //安装 npm i gulp-uglify  //压缩js
let jsMin = require('gulp-uglify');

function minjs() {
    return gulp.src("./lib/*.js") //读取资源 ==》流对象
        .pipe(concat("all.js"))
        .pipe(jsMin())
        .pipe(gulp.dest("./dist/")) //把流数据写入到指定目录下


}

//  //安装 npm i gulp-clean //清空文件夹
let clean = require('gulp-clean');

function clearFile() {

    return gulp.src('./dist').pipe(clean())

}

let postcss = require('gulp-postcss');

let autoprefixer = require('autoprefixer');

// css加前缀
function mycss() {
   
        return gulp.src("lib/*.css")
        .pipe(concat("ass.css"))
        .pipe(postcss([
            autoprefixer({
                overrideBrowserslist:["last 100 version"]
            })
        ]))
        .pipe(cssMin())
        .pipe(gulp.dest("dist"))


}
//es6 ==> res5

const babel = require('gulp-babel');

function res(complate) {

        gulp.src('./lib/*.js')
        .pipe(babel({
            presets: ['@babel/env']
        }))
        .pipe(gulp.dest('es5'))

    complate()
}
// 支持 commonjs
let browserify = require('gulp-browserify');
function common(complate) {

    gulp.src('./es5/*.js')
        .pipe(browserify())
        .pipe(gulp.dest('./build/js'))

complate()
}  
let js = gulp.series()

module.exports = {
    res,common,mycss
}